1. Field of the Invention
This invention relates to computer systems and, more particularly, to methods of upgrading computer systems.
2. Description of the Related Art
Computer systems have attained widespread use in providing computer power to many businesses and institutions. Computer systems are information handling systems which can be designed to give independent computing power to one user or a plurality of users. Some important applications in which computer systems have become common include general manufacturing monitoring and control; electronic, mechanical, and chemical system design and simulation; and network management and service. Productive processing time is of great importance to the users of these computer applications because system down time can result in significant costs.
In the design of a computer system, it is important to provide a degree of system availability that is necessitated by the applications for which the computer system is intended. System availability ranges from the ability of a system to remain functional in spite of failures in a portion thereof, to the minimization of a system's down-time in the event of a failure or necessary upgrade. High availability systems, as their name implies, are required to be available, or "on," virtually all of the time. For example, because many computer applications involve the use of network servers to provide processor power to multiple users, it is important that the network server be available as much as possible.
High availability computer systems must be able to restart as soon as possible after a system failure or upgrade. Frequent system upgrades or patches are often necessitated by the discovery of system errors or by the establishment of new system requirements. Unfortunately, operating system upgrades often require that the computer system be powered down or turned off. Also, computer system down time can occur as a result of an error or a failure during system setup during the upgrading procedure.
Commonly, when a computer system requires an upgrade, patches are made to the operating system of the computer system. Often, new patches are added to the patches from a previous system upgrade resulting in a large number of patches for each successive upgrade. The successful patches are then updated to other computer systems by replacing the present operating system of those computer systems with the new operating system including the successful patches. The new operating system is often installed from a storage device such as a tape drive to directly replace the present operating system needing the upgrade. Alternatively, the new operating system can be downloaded over a network.
Use of the method set forth above has certain consequences. Notably, using this method usually requires that the computer system be shut down. A backup of the present operating system usually must be made, and the upgrades or patches must be loaded while the computer system is down. Additionally, upgrades must often be made for multiple computer systems, causing down-time for all the systems involved. For example, in a network of servers, each server must be upgraded individually. That is, the system manager must power down a server, thereby limiting server availability by preventing user access, make a backup of the present operating system, load the new operating system, and test the new operating system. The system manager then repeats these actions for each of the other servers. The computer system being upgraded is usually down throughout the procedure, possibly for a period of hours. The cost for system downtime during these upgrades can be significant. Also, the chances for error or failure can be significant with this practice.